package models;

import java.util.Date;

import javax.persistence.Entity;

import play.data.validation.Required;
import play.data.validation.Unique;
import play.db.jpa.Model;

/**
 * 模块配置，配置模块的类名，用于反射注册
 * 2015年10月22日 下午3:23:10
 * @author huan208050@vip.qq.com
 */
@Entity
public class ModelCfg extends Model{
	/**
	 * 下线
	 */
	public static final int OFFLINE = 0;
	/**
	 * 在线
	 */
	public static final int ONLINE = 1;
	
	/**
	 * 异常
	 */
	public static final int ERROR = 2;
	
	/**
	 * 模块名称
	 */
	@Required
	@Unique
	public String modelName;
	/**
	 * 模块别名（重要！！！）
	 * 别名用于远程调用前缀
	 * 不填，默认传入className
	 */
	@Required
	@Unique
	public String alias;
	/**
	 * 类名称
	 */
	@Required
	@Unique
	public String className;
	/**
	 * 描述
	 */
	@Required
	public String description;
	
	/**
	 * 创建者
	 */
	@Required
	public String creatorId;
	/**
	 * 创建时间
	 */
	@Required
	public Date createTime;
	/**
	 * 修改人
	 */
	public String updatorId;
	/**
	 * 修改时间
	 */
	public Date updateTime;
	/**
	 * 模块状态
	 * 0.模块关闭
	 * 1.模块开启
	 * 2.模块加载异常
	 * 注意，该处关闭，需要重启WebServer之后才会生效
	 */
	@Required
	public int state;
}
